// action 对象的类型
export type AddTodo = {
  type: 'todos/add';
  payload: string;
};

// 删除 todo action
type DelTodo = {
  type: 'todos/del';
  payload: number;
};

// 联合类型导出
export type TodoAction = AddTodo | DelTodo; // 将来开发过程中，多一个action，这里就添加一个

// 指令，修改 state 的指令
export const addTodo = (text: string): AddTodo => ({
  type: 'todos/add',
  payload: text,
});

// 删除todo，一个函数，返回action对象
export const delTodo = (id: number): DelTodo => ({
  type: 'todos/del',
  payload: id,
});
